if (actual_flags != GTK_CSS_PARSE_NUMBER && !is_number (result))
actual_flags = GTK_CSS_PARSE_NUMBER;
- if (_gtk_css_parser_try (parser, "*", TRUE))
+ if (gtk_css_parser_try_delim (parser, '*'))
{
value = gtk_css_calc_value_parse_product (parser, actual_flags);
if (value == NULL)
_gtk_css_value_unref (result);
result = temp;
}
- else if (_gtk_css_parser_try (parser, "/", TRUE))
+ else if (gtk_css_parser_try_delim (parser, '/'))
{
value = gtk_css_calc_value_parse_product (parser, GTK_CSS_PARSE_NUMBER);
if (value == NULL)
{
GtkCssValue *next, *temp;
- if (_gtk_css_parser_try (parser, "+", TRUE))
+ if (gtk_css_parser_try_delim (parser, '+'))
{
next = gtk_css_calc_value_parse_product (parser, flags);
if (next == NULL)
goto fail;
}
- else if (_gtk_css_parser_try (parser, "-", TRUE))
+ else if (gtk_css_parser_try_delim (parser, '-'))
{
temp = gtk_css_calc_value_parse_product (parser, flags);
if (temp == NULL)
return TRUE;
}
+gboolean
+gtk_css_parser_try_delim (GtkCssParser *parser,
+ gunichar delim)
+{
+ if (*parser->data != delim)
+ return FALSE;
+ parser->data += 1;
+ _gtk_css_parser_skip_whitespace (parser);
+ return TRUE;
+}
+
gboolean
gtk_css_parser_try_token (GtkCssParser *parser,
GtkCssTokenType type)
*/
gboolean gtk_css_parser_try_ident (GtkCssParser *parser,
const char *ident);
+gboolean gtk_css_parser_try_delim (GtkCssParser *parser,
+ gunichar delim);
gboolean gtk_css_parser_try_at_keyword (GtkCssParser *parser,
const char *keyword);
gboolean gtk_css_parser_try_token (GtkCssParser *parser,
for (; i < 4; i++)
x[i] = _gtk_css_value_ref (x[(i - 1) >> 1]);
- if (_gtk_css_parser_try (parser, "/", TRUE))
+ if (gtk_css_parser_try_delim (parser, '/'))
{
for (i = 0; i < 4; i++)
{
if (values[1] == NULL)
return FALSE;
- if (_gtk_css_parser_try (parser, "/", TRUE))
+ if (gtk_css_parser_try_delim (parser, '/'))
{
values[2] = _gtk_css_border_value_parse (parser,
GTK_CSS_PARSE_PERCENT
values[1] = value;
value = NULL;
- if (_gtk_css_parser_try (parser, "/", TRUE) &&
+ if (gtk_css_parser_try_delim (parser, '/') &&
(value = _gtk_css_bg_size_value_parse (parser)))
{
values[2] = value;